home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / share / doc / at / timespec < prev   
Text File  |  2009-09-15  |  2KB  |  133 lines

  1. /* 
  2.  * Abbreviated version of the yacc grammar used by at(1).
  3.  */
  4.  
  5. %token  <charval> DOTTEDDATE
  6. %token  <charval> HYPHENDATE
  7. %token  <charval> HOURMIN
  8. %token  <charval> INT1DIGIT
  9. %token  <charval> INT2DIGIT
  10. %token  <charval> INT4DIGIT
  11. %token  <charval> INT5_8DIGIT
  12. %token  <charval> INT
  13. %token  NOW
  14. %token  AM PM
  15. %token  NOON MIDNIGHT TEATIME
  16. %token  SUN MON TUE WED THU FRI SAT
  17. %token  TODAY TOMORROW
  18. %token  NEXT
  19. %token  MINUTE HOUR DAY WEEK MONTH YEAR
  20. %token  JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC
  21. %token  UTC
  22.  
  23. %type <charval> concatenated_date
  24. %type <charval> hr24clock_hr_min
  25. %type <charval> int1_2digit
  26. %type <charval> int2_or_4digit
  27. %type <charval> integer
  28. %type <intval> inc_dec_period
  29. %type <intval> inc_dec_number
  30. %type <intval> day_of_week
  31.  
  32. %start timespec
  33. %%
  34. timespec        : spec_base
  35.         | spec_base inc_or_dec
  36.                 ;
  37.  
  38. spec_base    : date
  39.         | time
  40.                 | time date
  41.                 | NOW
  42.         ;
  43.  
  44. time        : time_base
  45.         | time_base timezone_name
  46.                 ;
  47.  
  48. time_base    : hr24clock_hr_min
  49.         | time_hour am_pm
  50.         | time_hour_min
  51.         | time_hour_min am_pm
  52.         | NOON
  53.                 | MIDNIGHT
  54.         | TEATIME
  55.         ;
  56.  
  57. hr24clock_hr_min: INT4DIGIT
  58.         ;
  59.  
  60. time_hour    : int1_2digit
  61.         ;
  62.  
  63. time_hour_min    : HOURMIN
  64.         ;
  65.  
  66. am_pm        : AM
  67.         | PM
  68.         ;
  69.  
  70. timezone_name    : UTC
  71.         ;
  72.  
  73. date            : month_name day_number
  74.                 | month_name day_number year_number
  75.                 | month_name day_number ',' year_number
  76.                 | day_of_week
  77.                 | TODAY
  78.                 | TOMORROW
  79.         | HYPHENDATE
  80.         | DOTTEDDATE
  81.         | day_number month_name
  82.         | day_number month_name year_number
  83.         | month_number '/' day_number '/' year_number
  84.         | concatenated_date
  85.                 | NEXT inc_dec_period        
  86.         | NEXT day_of_week
  87.                 ;
  88.  
  89. concatenated_date: INT5_8DIGIT
  90.         ;
  91.  
  92. month_name    : JAN | FEB | MAR | APR | MAY | JUN
  93.         | JUL | AUG | SEP | OCT | NOV | DEC
  94.         ;
  95.  
  96. month_number    : int1_2digit
  97.         ;
  98.  
  99. day_number    : int1_2digit
  100.         ;
  101.  
  102. year_number    : int2_or_4digit
  103.         ;
  104.  
  105. day_of_week    : SUN | MON | TUE | WED | THU | FRI | SAT
  106.         ;
  107.  
  108. inc_or_dec    : increment | decrement
  109.         ;
  110.  
  111. increment       : '+' inc_dec_number inc_dec_period
  112.                 ;
  113.  
  114. decrement    : '-' inc_dec_number inc_dec_period
  115.         ;
  116.  
  117. inc_dec_number    : integer
  118.         ;
  119.  
  120. inc_dec_period    : MINUTE | HOUR | DAY | WEEK | MONTH | YEAR
  121.         ;
  122.  
  123. int1_2digit    : INT1DIGIT | INT2DIGIT
  124.         ;
  125.  
  126. int2_or_4digit    : INT2DIGIT | INT4DIGIT
  127.         ;
  128.  
  129. integer        : INT | INT1DIGIT | INT2DIGIT | INT4DIGIT | INT5_8DIGIT
  130.         ;
  131.  
  132. %%
  133.